import Vue  from 'vue'
import Vuex from 'vuex'
Vue.use(Vuex)
import persistedState from 'vuex-persistedstate'

import guanlixito from '../课件/yonghu/guanlixito'
export default new Vuex.Store({
    // 存储的数据源，相当于data
state:{
    num:0,
    bool:false,
    obj:{name:'张三'},
    arr:[1,2,3],
    sum:0,
    editableTabsValue: "1",
    luyou:'app'


},
// 计算属性，相当于computed
getters:{
    // 所依赖的数据源发生改变的时候firtNum也会发生改变
    firtName(state){
          return  state.obj.name
    }

},
// 直接修改state里面的数据源
mutations:{
    luyou1(state,val){
        state.luyou=val
    },
    changeSum(state,val){
        console.log(val);
        state.sum+=val

    }
    ,add(state,val){
         if(val[0]=='+'){
           
        state.num+= Number(val[1])
         }
         if(val[0]=='-'){
            state.num-= Number(val[1])
             }
    },
    arc(state,val){
        // console.log(val);
        state.editableTabsValue=1
    }
    ,akk(state,val){

        state.bool=val
    }
},
// 用于异步函数(比如定时器延时器)修改修改数据
actions:{
        cccc(state,val){
            state.commit('changeSum',val)
        }
},
// 模块化vuex
modules:{

    guanlixito:guanlixito
},
// 数据持久化
plugins: [persistedState()]
})